The system disclosed herein relates to a Flash based memory system and more particularly relates to a Flash based memory system with distributed redundant array of independent disks (“RAID”).
RAID controller and memory controller are two important components in a contemporary memory storage system. RAID controller usually provides tasks such as intelligent data management, parity data generation, and cache backup. Memory controller usually provides Flash device management, physical address to logic address conversion, wear leveling, block picking, and garbage collection. Often RAID controller and memory controller are two independent entities, and such system architectures are limited in their bandwidth because they have a limited connection between each other; also, performance of such a system is limited by the computing power in centralized RAID controllers, and bottlenecks can arise through the use of complicated switching or interconnection methodologies.
To overcome the aforementioned shortcomings of the current systems in the market, the disclosed system provides an optimal Flash based memory system, with distributed RAID controller agent, closely coupled with memory controller, such architecture can provide more effective data flow inter-connection and parity check computing load sharing.